package org.bee.output;

import org.bee.model.BaseModel;

import java.util.Date;
import java.util.List;

/**
 * @author 陈国松
 * @date 2024-12-07 17:29:42
 * @description 页面元素表output层
 * 表 element
 */
public class ElementOut implements BaseModel {
    /**
     * 元素编号
     */
    private String elementId;
    /**
     * 父元素编号
     */
    private String parentId;
    /**
     * 元素名称
     */
    private String name;
    /**
     * 菜单路径
     */
    private String path;
    /**
     * 组件位置
     */
    private String component;
    /**
     * 菜单路径重定向
     */
    private String redirect;
    /**
     * 菜单图标
     */
    private String icon;
    /**
     * 菜单标题
     */
    private String title;
    /**
     * 当前路由为详情页时，需要高亮的菜单
     */
    private String activeMenu;
    /**
     * 外链地址
     */
    private String isLink;
    /**
     * 是否隐藏 0-否 1-是
     */
    private Boolean isHide;
    /**
     * 是否可以全屏 0-否 1-是
     */
    private Boolean isFull;
    /**
     * 是否固定在标签页不可关闭 0-否 1-是
     */
    private Boolean isAffix;
    /**
     * 元素类型  0-菜单 1-按钮
     */
    private String type;
    /**
     * 元素类型中文释义
     */
    private String typeName;
    /**
     * 按钮唯一编码
     */
    private String code;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 创建人
     */
    private String createUserId;
    /**
     * 修改时间
     */
    private Date updateTime;
    /**
     * 修改人
     */
    private String updateUserId;
    /**
     * 备注
     */
    private String remark;
    /**
     * 排序
     */
    private Integer orderNum;

    private List<ElementOut> children;

    public String getElementId() {
        return elementId;
    }

    public void setElementId(String elementId) {
        this.elementId = elementId;
    }

    public String getParentId() {
        return parentId;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPath() {
        return path;
    }

    public void setPath(String path) {
        this.path = path;
    }

    public String getComponent() {
        return component;
    }

    public void setComponent(String component) {
        this.component = component;
    }

    public String getRedirect() {
        return redirect;
    }

    public void setRedirect(String redirect) {
        this.redirect = redirect;
    }

    public String getIcon() {
        return icon;
    }

    public void setIcon(String icon) {
        this.icon = icon;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getActiveMenu() {
        return activeMenu;
    }

    public void setActiveMenu(String activeMenu) {
        this.activeMenu = activeMenu;
    }

    public String getIsLink() {
        return isLink;
    }

    public void setIsLink(String isLink) {
        this.isLink = isLink;
    }

    public Boolean getHide() {
        return isHide;
    }

    public void setHide(Boolean hide) {
        isHide = hide;
    }

    public Boolean getFull() {
        return isFull;
    }

    public void setFull(Boolean full) {
        isFull = full;
    }

    public Boolean getAffix() {
        return isAffix;
    }

    public void setAffix(Boolean affix) {
        isAffix = affix;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getCreateUserId() {
        return createUserId;
    }

    public void setCreateUserId(String createUserId) {
        this.createUserId = createUserId;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getUpdateUserId() {
        return updateUserId;
    }

    public void setUpdateUserId(String updateUserId) {
        this.updateUserId = updateUserId;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getOrderNum() {
        return orderNum;
    }

    public void setOrderNum(Integer orderNum) {
        this.orderNum = orderNum;
    }

    public List<ElementOut> getChildren() {
        return children;
    }

    public void setChildren(List<ElementOut> children) {
        this.children = children;
    }

    public String getTypeName() {
        return typeName;
    }

    public void setTypeName(String typeName) {
        this.typeName = typeName;
    }
}